﻿function removeMascaraNumerica(valor) {
    var saida = "";
    for (var i = 0; i < valor.length; i++) {
        saida += ((isNaN(valor.charAt(i))) || (valor.charAt(i) == ' ')) ? "" : valor.charAt(i);
    }
    return saida;
}

function formataMascaraNumerica(obj, mascara) {

    var str = removeMascaraNumerica(obj.value);
    var strFormatada = "";
    var j = 0;

    for (var i = 0; i < mascara.length && j < str.length; i++) {
        if (mascara.charAt(i) == '#') {
            strFormatada = strFormatada + str.charAt(j);
            j++;
        }
        else {
            strFormatada = strFormatada + mascara.charAt(i);
        }
    }

    obj.value = strFormatada;
    obj.maxLength = mascara.length;
}

function MascaraCampo(obj, evt, acao) {

    switch (acao) {
        case "HORA":
            formataMascaraNumerica(obj, "##:##", evt);
            break;
        case "INTEIRO6":
            formataMascaraNumerica(obj, "######", evt);
            break;
        case "DATA":
            formataMascaraNumerica(obj, "##/##/####", evt);
            break;
    }
}

$(document).ready(function () {
    $("input[type=text][tipo='INTEIRO6']").keyup(function () {
        MascaraCampo(this, this.event, 'INTEIRO6');
    });
    $("input[type=text][tipo='HORA']").keyup(function () {
        MascaraCampo(this, this.event, 'HORA');
    });
    $("input[type=text][tipo='DATA']").keyup(function () {
        MascaraCampo(this, this.event, 'DATA');
    });

    $("#btnAdicionar").click(function () {

        var id = $('#txtIDTarefa').val();
        var tarefa = $('#txtNomeTarefa').val();
        var data = $('#txtData').val();
        var tempo = $('#txtTempo').val();
        var usuario = $('#ddlUsuario').val();

        if (id == "" || data == "" || tempo == "" || usuario == "99999") {
            alert("Preencha os campos: \n\nUsuário\nID da Tarefa\nData da Tarefa\nTempo gasto");
            return false;
        }

        if (confirm("Dados para inclusão: \n\n" +
            "Usuario: " + usuario + "\n" +
            "Tarefa: " + tarefa + "\n" +
            "Dia: " + data + "\n" +
            "Tempo: " + tempo + "\n\n" +
            "Confirma a inclusão?")) {
            return true;
        }

        return false;
    });

    $('#txtTempo').blur(function () {

        BlurHora(this);
    });

    $('div .item input').blur(function () {

        BlurHora(this);
    });

    $("#btnSalvar").click(function () {

        if (confirm("Deseja realmente salvar as  alterações?")) {

            var usuario = $('#ddlUsuario').val();

            var chaves = '{"idUsuario": "' + usuario + '", "chaves":[';

            $('div .item input').each(function () {
                var chave = $(this).attr("chave");
                var valor = $(this).val();

                chaves = chaves + '{"chave":"' + chave + '", "valor":"' + valor + '"},';
            });

            chaves = chaves.substring(0, chaves.length - 1);
            chaves = chaves + ']}';

            var jsonObjeto = JSON.parse(chaves);

            $.post('handler/AtualizaTimeSheet.ashx', jsonObjeto, function (data) {

                var objeto = JSON.parse(data);

                if (objeto.Status == "OK") {
                    alert("Salvo com sucesso!");
                    location.href = "Default.aspx";
                } else {
                    alert(objeto.Mensagem);
                }
            });
        }

        return false;
    });

    $("#txtIDTarefa").on("blur", function () {

        var id = $('#txtIDTarefa').val();

        if (id == "")
            return false;

        $.post('handler/ConsultaTarefa.ashx', { idTarefa: id }, function (data) {

            var objeto = JSON.parse(data);

            if (objeto.Status == "OK") {
                $('#txtNomeTarefa').val(objeto.NomeTarefa);
                $('#txtData').focus();
            } else {
                $('#txtNomeTarefa').val("");
                $('#txtIDTarefa').focus();
            }
        });

    });
})

function BlurHora(obj) {
    var valor = $(obj).val();
    if ($(obj).val().length == 1) {
        valor = "0" + valor + "00";
        $(obj).val(valor);
    } else if ($(obj).val().length == 2) {
        valor = valor + "00";
        $(obj).val(valor);
    }
    else if ($(obj).val().length == 4) {
        valor = valor + "0";
        $(obj).val(valor);
    }
    MascaraCampo(obj, obj.event, 'HORA');
}